package com.example.pojo.VO;


import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import lombok.Data;

import java.io.Serializable;
import java.sql.ClientInfoStatus;
import java.util.Date;
import java.util.List;
import java.util.StringJoiner;

@Data
public class JobWithTaker implements Serializable {

    /**
     *
     */
    private Integer id;

    /**
     * 发布职位的用户编号
     */
    private Integer userIdentifier;

    /**
     * 发布职位的用户姓名
     */
    private String username;

    /**
     * 职位类型：‘1’零工   ‘2’短期兼职  3 长期兼职
     */
    private String jobType;

    /**
     * 职位标题
     */
    private String title;

    /**
     * 职位人数
     */
    private Integer maxPeople;

    /**
     * 职位描述
     */
    private String description;

    /**
     * 薪水
     */
    private Double salary;

    /**
     * 岗位进程 1-待接取 2-已截取 3-经行中 4-已完成  5-已结算
     *
     */
    private String process;

    /**
     * 审核状态 1-待审核  2-审核通过 3-审核失败
     */
    private String status;

    /**
     * 创建时间
     */
    private Date createdTime;

    /**
     * 开始时间
     */
    private Date startTime;

    /**
     * 结束时间
     */
    private Date endTime;

    /**
     * 发布时间
     */
    private Date publishTime;

    /**
     * 自动发布
     */
    private boolean autoPublish;

    /**
     * 删除标志
     */
    private int deleteFlag;

    /**
     * 接取用户id
     */
    private List<Integer> takersId;

    /**
     * 接取用户姓名
     */
    private List<String> takersName;

    public Integer getId() {
        return id;
    }

    public void setId(Integer id) {
        this.id = id;
    }

    public Integer getUserIdentifier() {
        return userIdentifier;
    }

    public void setUserIdentifier(Integer userIdentifier) {
        this.userIdentifier = userIdentifier;
    }

    public String getUserName() {
        return username;
    }

    public void setUserName(String userName) {
        this.username = userName;
    }

    public String getJobType() {
        return jobType;
    }

    public void setJobType(String jobType) {
        this.jobType = jobType;
    }

    public String getTitle() {
        return title;
    }

    public void setTitle(String title) {
        this.title = title;
    }

    public String getDescription() {
        return description;
    }

    public void setDescription(String description) {
        this.description = description;
    }

    public Double getSalary() {
        return salary;
    }

    public void setSalary(Double salary) {
        this.salary = salary;
    }

    public String getProcess() {
        return process;
    }

    public void setProcess(String process) {
        this.process = process;
    }

    public String getStatus() {
        return status;
    }

    public void setStatus(String status) {
        this.status = status;
    }

    public Date getCreatedTime() {
        return createdTime;
    }

    public void setCreatedTime(Date createdTime) {
        this.createdTime = createdTime;
    }

    public Date getStartTime() {
        return startTime;
    }

    public void setStartTime(Date startTime) {
        this.startTime = startTime;
    }

    public Date getEndTime() {
        return endTime;
    }

    public void setEndTime(Date endTime) {
        this.endTime = endTime;
    }

    public Date getPublishTime() {
        return publishTime;
    }

    public void setPublishTime(Date publishTime) {
        this.publishTime = publishTime;
    }

    public Boolean getAutoPublish() {
        return autoPublish;
    }

    public void setAutoPublish(Boolean autoPublish) {
        this.autoPublish = autoPublish;
    }

    public int getDeleteFlag() {
        return deleteFlag;
    }

    public void setDeleteFlag(int deleteFlag) {
        this.deleteFlag = deleteFlag;
    }

    public List<Integer> getTakersId() {
        return takersId;
    }

    public void setTakersId(List<Integer> takersId) {
        this.takersId = takersId;
    }

    public List<String> getTakersName() {
        return takersName;
    }

    public void setTakersName(List<String> takersName) {
        this.takersName = takersName;
    }

    @Override
    public String toString() {
        return "JobWithTaker{" +
                "id=" + id +
                ", userIdentifier=" + userIdentifier +
                ", username='" + username + '\'' +
                ", jobType='" + jobType + '\'' +
                ", title='" + title + '\'' +
                ", maxPeople=" + maxPeople +
                ", description='" + description + '\'' +
                ", salary=" + salary +
                ", process='" + process + '\'' +
                ", status='" + status + '\'' +
                ", createdTime=" + createdTime +
                ", startTime=" + startTime +
                ", endTime=" + endTime +
                ", publishTime=" + publishTime +
                ", autoPublish=" + autoPublish +
                ", deleteFlag=" + deleteFlag +
                ", takersId=" + takersId +
                ", takersName=" + takersName +
                '}'+"\n";
    }
}
